package gui;

import java.awt.Component;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JButton;
import javax.swing.JTextField;
import javax.swing.JLabel;

import entidades.Cliente;
import fachada.Fachada;

import java.awt.Font;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Color;

public class TelaCadastroCliente {

	/**
	 * chamando a instancia da fachada
	 */
	private Fachada fac = Fachada.obterInstancia();

	// private JFrame frame;
	private JFrame CadastroCliente;
	private JTextField textCpf;
	private JTextField textNome;
	private JTextField textSobreNome;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					TelaCadastroCliente window = new TelaCadastroCliente();
					window.CadastroCliente.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the application.
	 */
	public TelaCadastroCliente() {
		initialize();
	}

	/**
	 * Initialize the contents of the frame.
	 */
	private void initialize() {
		CadastroCliente = new JFrame();
		CadastroCliente.setTitle("Cliente");
		CadastroCliente.getContentPane().setBackground(Color.DARK_GRAY);
		CadastroCliente.setBounds(100, 100, 450, 300);
		CadastroCliente.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		CadastroCliente.getContentPane().setLayout(null);

		JButton btnCadastro = new JButton("Cadastro");
		btnCadastro.setBackground(Color.LIGHT_GRAY);
		btnCadastro.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				Cliente cli = new Cliente(textCpf.getText(),
						textNome.getText(), textSobreNome.getText());
				fac.inserir(cli);
			}
		});
		btnCadastro.setBounds(323, 24, 89, 23);
		CadastroCliente.getContentPane().add(btnCadastro);

		JButton btnAtualizar = new JButton("Atualizar");
		btnAtualizar.setBackground(Color.LIGHT_GRAY);
		btnAtualizar.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				fac.atualizar(textCpf.getText(), textNome.getText());
			}
		});
		btnAtualizar.setBounds(323, 71, 89, 23);
		CadastroCliente.getContentPane().add(btnAtualizar);

		JButton btnRemover = new JButton("Remover");
		btnRemover.setBackground(Color.LIGHT_GRAY);
		btnRemover.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				fac.remover(textCpf.getText());
			}
		});
		btnRemover.setBounds(323, 165, 89, 23);
		CadastroCliente.getContentPane().add(btnRemover);

		textCpf = new JTextField();
		textCpf.setForeground(Color.LIGHT_GRAY);
		textCpf.setBackground(Color.DARK_GRAY);
		textCpf.setColumns(10);
		textCpf.setBounds(90, 53, 193, 20);
		CadastroCliente.getContentPane().add(textCpf);

		JLabel label = new JLabel("Cpf");
		label.setForeground(Color.LIGHT_GRAY);
		label.setBackground(Color.DARK_GRAY);
		label.setFont(new Font("Tahoma", Font.PLAIN, 14));
		label.setBounds(10, 53, 76, 17);
		CadastroCliente.getContentPane().add(label);

		JLabel label_1 = new JLabel("Nome");
		label_1.setForeground(Color.LIGHT_GRAY);
		label_1.setBackground(Color.DARK_GRAY);
		label_1.setFont(new Font("Tahoma", Font.PLAIN, 14));
		label_1.setBounds(10, 79, 76, 17);
		CadastroCliente.getContentPane().add(label_1);

		textNome = new JTextField();
		textNome.setForeground(Color.LIGHT_GRAY);
		textNome.setBackground(Color.DARK_GRAY);
		textNome.setText("");
		textNome.setColumns(10);
		textNome.setBounds(90, 79, 193, 20);
		CadastroCliente.getContentPane().add(textNome);

		textSobreNome = new JTextField();
		textSobreNome.setForeground(Color.LIGHT_GRAY);
		textSobreNome.setBackground(Color.DARK_GRAY);
		textSobreNome.setText("");
		textSobreNome.setColumns(10);
		textSobreNome.setBounds(90, 110, 193, 20);
		CadastroCliente.getContentPane().add(textSobreNome);

		JLabel label_2 = new JLabel("Sobre Nome");
		label_2.setForeground(Color.LIGHT_GRAY);
		label_2.setBackground(Color.DARK_GRAY);
		label_2.setFont(new Font("Tahoma", Font.PLAIN, 14));
		label_2.setBounds(10, 110, 76, 17);
		CadastroCliente.getContentPane().add(label_2);

		JButton btnPesquisar = new JButton("Pesquisar");
		btnPesquisar.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {				
				Cliente c = fac.pesquisar(textCpf.getText());
				textNome.setText(c.getNome());
				textSobreNome.setText(c.getSobreNome());
			}
		});
		btnPesquisar.setBackground(Color.LIGHT_GRAY);
		btnPesquisar.setBounds(323, 118, 89, 23);
		CadastroCliente.getContentPane().add(btnPesquisar);

		JButton btnSair = new JButton("Sair");
		btnSair.setBackground(Color.LIGHT_GRAY);
		btnSair.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				CadastroCliente.dispose();
			}
		});
		btnSair.setBounds(323, 212, 89, 23);
		CadastroCliente.getContentPane().add(btnSair);
	}

	// GET E SET
	public JFrame getTelaCliente() {
		return CadastroCliente;
	}

	public void setTelaCliente(JFrame frame) {
		this.CadastroCliente = frame;
	}
}
